/* Various liblldb typedefs that SWIG needs to know about.  */
#define __extension__ /* Undefine GCC keyword to make Swig happy when processing glibc's stdint.h. */
%include "stdint.i"

%include "lldb/lldb-defines.h"
%include "lldb/lldb-enumerations.h"
%include "lldb/lldb-forward.h"
%include "lldb/lldb-types.h"

/* Forward declaration of SB classes. */
%include "lldb/API/SBDefines.h"

/* Docstrings for SB classes and methods */
%include "./interface/SBAddressDocstrings.i"
%include "./interface/SBAttachInfoDocstrings.i"
%include "./interface/SBBlockDocstrings.i"
%include "./interface/SBBreakpointDocstrings.i"
%include "./interface/SBBreakpointLocationDocstrings.i"
%include "./interface/SBBreakpointNameDocstrings.i"
%include "./interface/SBBroadcasterDocstrings.i"
%include "./interface/SBCommandInterpreterDocstrings.i"
%include "./interface/SBCommandInterpreterRunOptionsDocstrings.i"
%include "./interface/SBCommandReturnObjectDocstrings.i"
%include "./interface/SBCommunicationDocstrings.i"
%include "./interface/SBCompileUnitDocstrings.i"
%include "./interface/SBDataDocstrings.i"
%include "./interface/SBDebuggerDocstrings.i"
%include "./interface/SBDeclarationDocstrings.i"
%include "./interface/SBErrorDocstrings.i"
%include "./interface/SBEnvironmentDocstrings.i"
%include "./interface/SBEventDocstrings.i"
%include "./interface/SBExecutionContextDocstrings.i"
%include "./interface/SBExpressionOptionsDocstrings.i"
%include "./interface/SBFileDocstrings.i"
%include "./interface/SBFileSpecDocstrings.i"
%include "./interface/SBFileSpecListDocstrings.i"
%include "./interface/SBFrameDocstrings.i"
%include "./interface/SBFunctionDocstrings.i"
%include "./interface/SBHostOSDocstrings.i"
%include "./interface/SBInstructionDocstrings.i"
%include "./interface/SBInstructionListDocstrings.i"
%include "./interface/SBLanguageRuntimeDocstrings.i"
%include "./interface/SBLaunchInfoDocstrings.i"
%include "./interface/SBLineEntryDocstrings.i"
%include "./interface/SBListenerDocstrings.i"
%include "./interface/SBMemoryRegionInfoDocstrings.i"
%include "./interface/SBMemoryRegionInfoListDocstrings.i"
%include "./interface/SBModuleDocstrings.i"
%include "./interface/SBModuleSpecDocstrings.i"
%include "./interface/SBPlatformDocstrings.i"
%include "./interface/SBProcessDocstrings.i"
%include "./interface/SBProcessInfoDocstrings.i"
%include "./interface/SBQueueDocstrings.i"
%include "./interface/SBQueueItemDocstrings.i"
%include "./interface/SBReproducerDocstrings.i"
%include "./interface/SBSectionDocstrings.i"
%include "./interface/SBSourceManagerDocstrings.i"
%include "./interface/SBStreamDocstrings.i"
%include "./interface/SBStringListDocstrings.i"
%include "./interface/SBStructuredDataDocstrings.i"
%include "./interface/SBSymbolDocstrings.i"
%include "./interface/SBSymbolContextDocstrings.i"
%include "./interface/SBSymbolContextListDocstrings.i"
%include "./interface/SBTargetDocstrings.i"
%include "./interface/SBThreadDocstrings.i"
%include "./interface/SBThreadCollectionDocstrings.i"
%include "./interface/SBThreadPlanDocstrings.i"
%include "./interface/SBTraceDocstrings.i"
%include "./interface/SBTraceCursorDocstrings.i"
%include "./interface/SBTypeDocstrings.i"
%include "./interface/SBTypeCategoryDocstrings.i"
%include "./interface/SBTypeEnumMemberDocstrings.i"
%include "./interface/SBTypeFilterDocstrings.i"
%include "./interface/SBTypeFormatDocstrings.i"
%include "./interface/SBTypeNameSpecifierDocstrings.i"
%include "./interface/SBTypeSummaryDocstrings.i"
%include "./interface/SBTypeSyntheticDocstrings.i"
%include "./interface/SBUnixSignalsDocstrings.i"
%include "./interface/SBValueDocstrings.i"
%include "./interface/SBValueListDocstrings.i"
%include "./interface/SBVariablesOptionsDocstrings.i"
%include "./interface/SBWatchpointDocstrings.i"

/* API headers */
%include "lldb/API/SBAddress.h"
%include "lldb/API/SBAttachInfo.h"
%include "lldb/API/SBBlock.h"
%include "lldb/API/SBBreakpoint.h"
%include "lldb/API/SBBreakpointLocation.h"
%include "lldb/API/SBBreakpointName.h"
%include "lldb/API/SBBroadcaster.h"
%include "lldb/API/SBCommandInterpreter.h"
%include "lldb/API/SBCommandInterpreterRunOptions.h"
%include "lldb/API/SBCommandReturnObject.h"
%include "lldb/API/SBCommunication.h"
%include "lldb/API/SBCompileUnit.h"
%include "lldb/API/SBData.h"
%include "lldb/API/SBDebugger.h"
%include "lldb/API/SBDeclaration.h"
%include "lldb/API/SBError.h"
%include "lldb/API/SBEnvironment.h"
%include "lldb/API/SBEvent.h"
%include "lldb/API/SBExecutionContext.h"
%include "lldb/API/SBExpressionOptions.h"
%include "lldb/API/SBFile.h"
%include "lldb/API/SBFileSpec.h"
%include "lldb/API/SBFileSpecList.h"
%include "lldb/API/SBFrame.h"
%include "lldb/API/SBFunction.h"
%include "lldb/API/SBHostOS.h"
%include "lldb/API/SBInstruction.h"
%include "lldb/API/SBInstructionList.h"
%include "lldb/API/SBLanguageRuntime.h"
%include "lldb/API/SBLaunchInfo.h"
%include "lldb/API/SBLineEntry.h"
%include "lldb/API/SBListener.h"
%include "lldb/API/SBMemoryRegionInfo.h"
%include "lldb/API/SBMemoryRegionInfoList.h"
%include "lldb/API/SBModule.h"
%include "lldb/API/SBModuleSpec.h"
%include "lldb/API/SBPlatform.h"
%include "lldb/API/SBProcess.h"
%include "lldb/API/SBProcessInfo.h"
%include "lldb/API/SBQueue.h"
%include "lldb/API/SBQueueItem.h"
%include "lldb/API/SBReproducer.h"
%include "lldb/API/SBSection.h"
%include "lldb/API/SBSourceManager.h"
%include "lldb/API/SBStream.h"
%include "lldb/API/SBStringList.h"
%include "lldb/API/SBStructuredData.h"
%include "lldb/API/SBSymbol.h"
%include "lldb/API/SBSymbolContext.h"
%include "lldb/API/SBSymbolContextList.h"
%include "lldb/API/SBTarget.h"
%include "lldb/API/SBThread.h"
%include "lldb/API/SBThreadCollection.h"
%include "lldb/API/SBThreadPlan.h"
%include "lldb/API/SBTrace.h"
%include "lldb/API/SBTraceCursor.h"
%include "lldb/API/SBType.h"
%include "lldb/API/SBTypeCategory.h"
%include "lldb/API/SBTypeEnumMember.h"
%include "lldb/API/SBTypeFilter.h"
%include "lldb/API/SBTypeFormat.h"
%include "lldb/API/SBTypeNameSpecifier.h"
%include "lldb/API/SBTypeSummary.h"
%include "lldb/API/SBTypeSynthetic.h"
%include "lldb/API/SBUnixSignals.h"
%include "lldb/API/SBValue.h"
%include "lldb/API/SBValueList.h"
%include "lldb/API/SBVariablesOptions.h"
%include "lldb/API/SBWatchpoint.h"

/* Extensions for SB classes */
%include "./interface/SBAddressExtensions.i"
%include "./interface/SBBlockExtensions.i"
%include "./interface/SBBreakpointExtensions.i"
%include "./interface/SBBreakpointLocationExtensions.i"
%include "./interface/SBBreakpointNameExtensions.i"
%include "./interface/SBCommandReturnObjectExtensions.i"
%include "./interface/SBCompileUnitExtensions.i"
%include "./interface/SBDataExtensions.i"
%include "./interface/SBDebuggerExtensions.i"
%include "./interface/SBDeclarationExtensions.i"
%include "./interface/SBErrorExtensions.i"
%include "./interface/SBExecutionContextExtensions.i"
%include "./interface/SBFileExtensions.i"
%include "./interface/SBFileSpecExtensions.i"
%include "./interface/SBFrameExtensions.i"
%include "./interface/SBFunctionExtensions.i"
%include "./interface/SBInstructionExtensions.i"
%include "./interface/SBInstructionListExtensions.i"
%include "./interface/SBLineEntryExtensions.i"
%include "./interface/SBMemoryRegionInfoExtensions.i"
%include "./interface/SBModuleExtensions.i"
%include "./interface/SBModuleSpecExtensions.i"
%include "./interface/SBProcessExtensions.i"
%include "./interface/SBSectionExtensions.i"
%include "./interface/SBStreamExtensions.i"
%include "./interface/SBStringListExtensions.i"
%include "./interface/SBSymbolExtensions.i"
%include "./interface/SBSymbolContextExtensions.i"
%include "./interface/SBSymbolContextListExtensions.i"
%include "./interface/SBTargetExtensions.i"
%include "./interface/SBThreadExtensions.i"
%include "./interface/SBTypeExtensions.i"
%include "./interface/SBTypeCategoryExtensions.i"
%include "./interface/SBTypeEnumMemberExtensions.i"
%include "./interface/SBTypeFilterExtensions.i"
%include "./interface/SBTypeFormatExtensions.i"
%include "./interface/SBTypeNameSpecifierExtensions.i"
%include "./interface/SBTypeSummaryExtensions.i"
%include "./interface/SBTypeSyntheticExtensions.i"
%include "./interface/SBUnixSignalsExtensions.i"
%include "./interface/SBValueExtensions.i"
%include "./interface/SBValueListExtensions.i"
%include "./interface/SBWatchpointExtensions.i"
